1. Field of the Invention
The present invention relates generally to home networking. More specifically, the present invention relates to media transport negotiation in a home network.
2. Description of the Related Art
Universal Plug and Play (UPnP) is a distributed, open networking architecture that allows devices to connect seamlessly and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments. UPnP achieves this by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
UPnP has grown in popularity of late in part due to the rise in popularity of media servers. Media servers are small computers that store multiple types of content (e.g., photos, music, videos, etc.). The content may then be streamed from a media server to one or more control points (e.g., iPod, television set, etc.).
As an example, a “Media Server” device might contain a significant portion of the homeowner's audio, video, and still-image library. In order for the homeowner to enjoy this content, the homeowner must be able to browse the objects stored on the Media Server, select a specific one, and cause it to be “played” on an appropriate rendering device, using a Media Renderer. This process is currently performed using metadata published by the Media Server and the Media Renderer devices.
Normally, when a user wishes to display media on a UPnP device, the control point can send the device an action to fetch a Uniform Resource Locator (URL) and render it. The URL can be a link to an image, video, song file, etc.
General advances in computing technology now allow some Media Servers to dynamically modify content formats in real-time to meet custom requirements. This allows, for example, the content to be modified to meet the specifications of a particular presenter. A control point, however, may not have a complete understanding of the needs of a media renderer device. This is the case if the control point is not built into the media renderer. In this case, the control point can only rely on the list of media formats supported by the media Renderer. This list omits other relevant features of the Media Renderer, however, such as optimum resolutions, aspect rations, and other potentially adjustable content features.
Different televisions, for example, have different modes. A TV, for example, may support a movie mode, a sports mode, and an outdoor mode, each having their own display preferences on the television. Supporting this advance using existing static Media Server metadata, however, is difficult because the number of possible variations in content format is large and not known a priori. For example, there is currently no way to represent “movie mode,” “sports mode,” or “outdoor mode” using UPnP.
In addition, UPnP mechanisms do not depend on the specifics of content transport. For example, UPnP allows content to be transferred via IEEE-1394 (Firewire) or HTTP-GET or RTP. Any negotiation of content formats must be done outside of the media transport operation.
What is needed is a mechanism that allows for negotiation between a Media Server and a media renderer that works with existing UPnP or similar home networking architectures but allows custom negotiation of content formats.